Current-mode switching regulators operate to provide a substantially constant output voltage to a load from a voltage source that may be poorly-specified or fluctuating. As is well known, in a current mode switching regulator, the flow of current to the load is provided in the form of discrete current pulses, and governed by a controller. The controller functions to measure the current flow within the regulator, and operate a switch contained within the regulator to control the current supply based on this measured current. By controlling the duty cycle of this switch, i.e., the percentage of time that the switch is ON relative to the total period of the switching cycle, the amount of current supplied by switching regulator can be regulated so as to provide the desired output level.
In current-mode switching voltage regulators, which utilize current programmed control, there is an inherent instability when the duty cycle exceeds 50% with fixed frequency and continuous inductor current mode, and 67% with fixed frequency and discontinuous inductor current mode (i.e., when the switch is ON for more than 50% or 67% of a given switching period). In order to maintain stability of such current-mode switching regulators, the current-derived signal used to control the regulator is modified by, for example, applying a slope compensation signal.
FIG. 1a shows an example of a known buck-configuration current-mode switching regulator 100 utilizing slope compensation (see, Erickson's: Fundamentals of Power Electronics, 2nd Edition, pages 446–448). The switching regulator 100 includes a voltage source 112, a switch 114, a diode 116, an inductor 118, a capacitor 120, a load 122 and a current controller circuit 124 coupled together in the manner shown in FIG. 1. The current controller circuit 124 includes a timing circuit 126 that is capable of producing linear ramp and clock digital signals, a latch 128, a comparator 130, a summer 132 and a scaling resistor 134. As shown, the latch 128 receives an input signal from the timing circuit 126 which functions to set the latch 128. When the latch 128 is set, it causes the switch 114 to turn on and provide current from the voltage source 112 to the output load 122. Latch 128 remains set until an output signal from the comparator 130 causes the latch 128 to reset. When reset, the latch 128 turns switch 114 off so that current is no longer drawn from the voltage source 112.
The timing circuit 126 also generates a linear slope compensation signal, which is coupled to one input of the summer 132. The slope compensation signal is illustrated in FIG. 1b. The other input of the summer 132 receives a signal indicating the current supplied to the output load 122. The output of the summer 132 is coupled to one input of the comparator 130. The other input to the comparator 130 is a control signal, Vc, indicating the difference between the desired (i.e., VSETPOINT) and actual voltage (i.e., Vo) levels to be supplied to the load 122. Comparator 130 determines when to reset latch 128 by comparing a signal that is the combination of the signal representing the measured current and the linear slope compensation signal (i.e., the output of summer 132) and the control signal, Vc.
As noted above, it is well known in the prior art that slope compensation can be applied to the switching regulator controllers to avoid sub-harmonic oscillation instability of the duty cycle with respect to the switching frequency when the nominal duty cycle exceeds 50%.
As set forth by Erickson, for buck converters the boundary of stability with slope compensation is stated as:
                              1          =                                                    S                f                            -                              S                e                                                                    S                r                            +                              S                e                                                    ,                  in          ⁢                                          ⁢          the          ⁢                                          ⁢          notation          ⁢                                          ⁢          where          ⁢                                    :                        ⁡                          [                                                                                                                  S                        f                                            =                                                                        falling                          ⁢                                                                                                          ⁢                          current                          ⁢                                                                                                          ⁢                          slope                                                =                                                                              M                            2                                                    =                                                                                    V                              0                                                        L                                                                                                                                                                                                                                  S                        r                                            =                                                                        rising                          ⁢                                                                                                          ⁢                          current                          ⁢                                                                                                          ⁢                          slope                                                =                                                                              M                            1                                                    =                                                                                                                    V                                IN                                                            -                                                              V                                0                                                                                      L                                                                                                                                                                                                                                  S                        e                                            =                                                                        external                          ⁢                                                                                                          ⁢                          compensation                          ⁢                                                                                                          ⁢                          ramp                          ⁢                                                                                                          ⁢                          slope                                                =                                                  M                          a                                                                                                                                ]                                                          (        1        )            Thus the required compensation ramp slope for stability is:
                                          S            e                    =                                                                      S                  f                                -                                  S                  r                                            2                        =                                                                                2                    ⁢                                          V                      0                                                        -                                      V                    IN                                                                    2                  ⁢                                                                          ⁢                  L                                            =                                                                    (                                                                  2                        ⁢                                                                                                  ⁢                        D                                            -                      1                                        )                                    ⁢                                      V                    IN                                                                    2                  ⁢                                                                          ⁢                  L                                                                    ,                  (                                                    since                ⁢                                                                  ⁢                D                            =                                                V                  0                                                  V                  IN                                                      ,                                          and                ⁢                                                                  ⁢                                  D                  ⁡                                      (                    t                    )                                                              =                                                                    t                    Ts                                    ⁢                                                                          ⁢                  for                  ⁢                                                                          ⁢                  0                                ≤                t                ≤                                  Ts                  ⁢                                                                          ⁢                  in                  ⁢                                                                          ⁢                  each                  ⁢                                                                          ⁢                  control                  ⁢                                                                          ⁢                  cycle                                                              )                                    (        2        )            Se is the slope of the current compensation ramp Ve, so the scaling factor to obtain the signal voltage is Ri, the same factor as the current sense scaling. Thus:
                                          d            dt                    ⁢                      V            e                          =                              Ri            *                          S              e                                =                                                                                          R                    i                                    ⁢                                      V                    IN                                                                    2                  ⁢                                                                          ⁢                  L                                            ⁢                              (                                                      2                    ⁢                                                                                  ⁢                    D                                    -                  1                                )                                      =                                                            RiVIN                  L                                ⁢                                  (                                                            t                                              T                        s                                                              -                                          1                      /                      2                                                        )                                            =                                                                    RiV                    IN                                    L                                ⁢                                  (                                                                                    V                        CK                                                                    V                        REF                                                              -                                          1                      /                      2                                                        )                                                                                        (        3        )            where referring to FIG. 2b, VCK=(VREF/Ts)*t, for 0≦t≦Ts. Accordingly, for stability, the compensation ramp slope can be zero until:
                              t          =                                    T              s                        2                          ,                  (                      D            =            0.5                    )                ,                            (        4        )            and then must increase proportional with t, to a maximum of:
                                                        V              IN                                      2              ⁢                                                          ⁢              L                                ⁢                                          ⁢          at          ⁢                                          ⁢          t                =                              T            s                    .                                    (        5        )            Thus:
                                          Ve            ⁡                          (              t              )                                =                                                                      RiV                  IN                                L                            ⁢                                                ∫                                      Ts                    2                                    t                                ⁢                                                      (                                                                  t                        -                                                  Ts                          2                                                                    Ts                                        )                                    ⁢                                                                          ⁢                                      ⅆ                    t                                                                        =                                                                                RiV                    IN                                    ⁡                                      (                                          t                      -                                              Ts                        2                                                              )                                                  2                                            2                ⁢                                                                  ⁢                LTs                                                    ,                              for            ⁢                                                  ⁢                          Ts              /              2                                ≤          t          ≤          Ts                ,                            (        6        )                                          and          ⁢                                          ⁢                      Ve            ⁡                          (              t              )                                      =                              0            ⁢                                                  ⁢            for            ⁢                                                  ⁢            t                    ≤                      Ts            /            2                                              (        7        )            
The preceding equations defining the waveforms are illustrated in FIGS. 2a and 2b. Specifically, FIG. 2a illustrates the current signal, IL, delivered to the load during an exemplary clock cycle, Ts. As shown, IL exhibits a rising slope Sr during the period the switch 114 is on, and exhibits a decreasing slope Sf during the period the switch 114 is off. FIG. 2b illustrates two slope compensation signals. The first slope compensation signal, which is typically utilized in known devices, exhibits a linear increase (see, dashed-line 22). The second and more desirable slope compensation signal exhibits a non-linear increase (see, solid line 24).
As noted, the present design practice is usually to make the slope of the compensation signal constant at the maximum value required for a duty cycle equal to 100% (i.e., D=1) so that the waveform is an easy to generate linear ramp as illustrated in FIG. 2b, element 22. However, the condition necessary for stability is a non-linear function as indicated by element 24 of FIG. 2b. The non-linear function of the slope compensation signal as shown in equation (6), when evaluated at t=Ts, has the value:
                              Ve          ⁡                      (            t            )                          =                                                                              R                  i                                ⁢                                  V                  IN                                                            2                ⁢                                                                  ⁢                                  LT                  s                                                      ⁢                                          (                                  t                  -                                      Ts                    2                                                  )                            2                                =                                                                                          R                    i                                    ⁢                                      V                    IN                                                                    8                  ⁢                                                                          ⁢                  L                                            ⁢                              T                s                            ⁢                                                          ⁢              at              ⁢                                                          ⁢              t                        =            Ts                                              (        8        )            A linear ramp of the same maximum slope required for stability (i.e., 22 of FIG. 2b) would have a value of:
                                                                        RiV                IN                                            2                ⁢                                                                  ⁢                L                                      ⁢                          (                              Ts                2                            )                                =                                                                                          RiV                    IN                                    ⁢                  Ts                                                  4                  ⁢                                                                          ⁢                  L                                            ⁢                                                          ⁢              at              ⁢                                                          ⁢              t                        =            Ts                          ,                            (        9        )            or twice as large a correction amplitude as needed with the second order compensation ramp. It is noted that larger correction amplitudes of the compensation ramp increase dynamic signal range requirements in the controller and make it more difficult to obtain large load currents, especially when VOUT is nearly equal to VIN and D→1.
In other words, by utilizing a linear slope compensation signal and providing enough slope compensation to handle the worst case scenario, which is 100% duty cycle, the dynamic range of the controller is unnecessarily reduced when the regulator is operating at a duty cycle of less than 100%. As is known, the amount of slope compensation necessary to provide stability increases as the duty cycle increases. In view of the foregoing, it is desirable to provide only the amount of slope compensation actually required to prevent instability so as to not degrade the dynamic range of the controller.